﻿using System;
using System.Collections.Generic;
using System.Data.SqlClient;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Framework.Entidade.Acesso;

namespace Framework.AcessoDados.Acesso
{
    public class AD_Usuario
    {
        #region Construtor

        public EN_Usuario Construtor(SqlDataReader dr)
        {
            if (dr == null) { throw new ArgumentNullException("reader"); }

            int id = dr.GetOrdinal("id");
            int idPessoaFisica = dr.GetOrdinal("idPessoaFisica");
            int idPessoaJuridica = dr.GetOrdinal("idPessoaJuridica");
            int login = dr.GetOrdinal("login");
            int senha = dr.GetOrdinal("senha");
            int status = dr.GetOrdinal("status");

            EN_Usuario objUsuario = new EN_Usuario();

            //Recuperando campos do retorno do objeto
            if (!dr.IsDBNull(id))
            {
                objUsuario.Id = dr.GetInt32(id);
            }
            if (!dr.IsDBNull(idPessoaFisica))
            {
                objUsuario.IdPessoaFisica = dr.GetInt32(idPessoaFisica);
            }
            if (!dr.IsDBNull(idPessoaJuridica))
            {
                objUsuario.IdPessoaJuridica = dr.GetInt32(idPessoaJuridica);
            }
            if (!dr.IsDBNull(login))
            {
                objUsuario.Login = dr.GetString(login);
            }
            if (!dr.IsDBNull(senha))
            {
                objUsuario.Senha = dr.GetString(senha);
            }
            if (!dr.IsDBNull(status))
            {
                objUsuario.Status = dr.GetBoolean(status);
            }

            return objUsuario;
        }

        #endregion

        #region Métodos

        #endregion
    }
}
